package zhujie;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target(ElementType.TYPE)
//@Target(value = ElementType.TYPE)
//@Target(value = {ElementType.TYPE})
//@Target(value = {ElementType.ANNOTATION_TYPE, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
//要想反射获取注解信息，注解生命周期必然为RUNTIME
//注解中有属性值必须在使用时赋值，除非属性在定义时已经默认赋初值,即后面有  default+...
//传递一个参数可以写成 @Hello(20),等价于@Hello(age=20)
//传递多个参数时，必须写成 @Hello(age=20,name="jhh")
public @interface Hello {
    String name() default "张三";

    int age();

    String[] names() default {"张三", "李四"};
}
